package com.google.code.robot;

import com.google.code.constant.STATUS;
import com.google.code.constant.T;

public class Player {
	private final String username;
	private final String password;

	private String nickname;
	private int lvl;
	private int ep;
	private int duelTimes;
	private int acptTaskNum;
	private int lstDayTaskNum;

	private long lastDuelTime;
	private long lastCombatTime;
	private long lastAutoTaskTime;
	private long loginTime;

	private String curPos;
	private String trainPos;
	private int monsterId;

	private STATUS status;
	private boolean isLoggedIn;

	public int getLstDayTaskNum() {
		return lstDayTaskNum;
	}

	public void setLstDayTaskNum(int lstDayTaskNum) {
		this.lstDayTaskNum = lstDayTaskNum;
	}

	public int getAcptTaskNum() {
		return acptTaskNum;
	}

	public void setAcptTaskNum(int acptTaskNum) {
		this.acptTaskNum = acptTaskNum;
	}

	public String getTrainPos() {
		return trainPos;
	}

	public void setTrainPos(String trainPos) {
		this.trainPos = trainPos;
	}

	public int getMonsterId() {
		return monsterId;
	}

	public void setMonsterId(int monsterId) {
		this.monsterId = monsterId;
	}

	public boolean isLoggedIn() {
		return isLoggedIn;
	}

	public void setLoggedIn(boolean isLoggedIn) {
		this.isLoggedIn = isLoggedIn;
	}

	public long getLastAutoTaskTime() {
		return lastAutoTaskTime;
	}

	public void setLastAutoTaskTime(long lastAutoTaskTime) {
		this.lastAutoTaskTime = lastAutoTaskTime;
	}

	public STATUS getStatus() {
		return this.status;
	}

	public void setStatus(STATUS status) {
		this.status = status;
	}

	public String getCurPos() {
		return curPos;
	}

	public void setCurPos(String curPos) {
		this.curPos = curPos;
	}

	public String getUsername() {
		return username;
	}

	public String getPassword() {
		return password;
	}

	public Player(String username, String password) {
		this.username = username;
		this.password = password;

		this.acptTaskNum = -1;
		this.lstDayTaskNum = -1;
		this.curPos = null;
		this.duelTimes = -1;
		this.ep = -1;
		this.isLoggedIn = false;
		this.lastAutoTaskTime = -1;
		this.lastCombatTime = -1;
		this.lastDuelTime = -1;
		this.loginTime = -1;
		this.lvl = -1;
		this.monsterId = -1;
		this.nickname = null;
		this.status = null;
		this.trainPos = null;
	}

	public String getNickname() {
		return nickname;
	}

	public void setNickname(String nickname) {
		this.nickname = nickname;
	}

	public int getLvl() {
		return lvl;
	}

	public void setLvl(int lvl) {
		this.lvl = lvl;
	}

	public int getEp() {
		return ep;
	}

	public void setEp(int ep) {
		this.ep = ep;
	}

	public int getDuelTimes() {
		return duelTimes;
	}

	public long getLastDuelTime() {
		return lastDuelTime;
	}

	public void setLastDuelTime(long lastDuelTime) {
		this.lastDuelTime = lastDuelTime;
	}

	public long getLastCombatTime() {
		return lastCombatTime;
	}

	public void setLastCombatTime(long lastCombatTime) {
		this.lastCombatTime = lastCombatTime;
	}

	public void setDuelTimes(int dualTimes) {
		this.duelTimes = dualTimes;
	}

	public long getLoginTime() {
		return loginTime;
	}

	public void setLoginTime(long loginTime) {
		this.loginTime = loginTime;
	}

	public String toString() {
		return "*** Time  : " + T.TIME() + "\n" +
			   "    Name  : " + this.nickname + "\n" +
		       "    Level : " + this.lvl + "\n" +
		       "    Ep    : " + this.ep + "\n" +
		       "    Task  : " + this.acptTaskNum + "\n" + 
		       "    Duel  : " + this.duelTimes + "\n" +
		       "    Status: " + this.status.val + "\n";
	}
}
